package pe.com.bbva.ge.domain.solicitud;

import java.math.BigInteger;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.TableGenerator;

import pe.com.bbva.ge.domain.base.Auditoria;
import pe.com.bbva.ge.domain.configuracion.Valor;


/**
 * The persistent class for the SOL_DETALLE_MATERIAL database table.
 * 
 */
@Entity
@Table(name="SOL_DETALLE_MATERIAL")
public class DetalleMaterial extends Auditoria {
	private static final long serialVersionUID = 1L;
	
	@Id
	@Column(unique = true, nullable = false, precision = 19)
	@GeneratedValue(strategy = GenerationType.TABLE, generator = "SEQ_DETALLE_MATERIAL")
	@TableGenerator(name = "SEQ_DETALLE_MATERIAL", 
	table = DetalleMaterial.SEQ_TABLA, 
	pkColumnName = DetalleMaterial.SEQ_TABLA_PK, 
	initialValue = 1, 
	valueColumnName = DetalleMaterial.SEQ_TABLA_COLUMN, 
	pkColumnValue = "pe.com.bbva.ge.domain.solicitud.DetalleMaterial", 
	allocationSize = 1)	
	private long id;
	public long getId() {
		return id;
	}
	public void setId(long id) {
		this.id = id;
	}
	
	//

	private BigInteger aprobado;

	private BigInteger recepcionado;

	private BigInteger solicitado;

	//uni-directional many-to-one association to Valor
	@ManyToOne
	@JoinColumn(name="TIPO_MATERIAL")
	private Valor tipoMaterial;

	//bi-directional many-to-one association to Destino
	@ManyToOne
	@JoinColumn(name="DESTINO")
	private Destino destino;

	public BigInteger getAprobado() {
		return this.aprobado;
	}

	public void setAprobado(BigInteger aprobado) {
		this.aprobado = aprobado;
	}

	public BigInteger getRecepcionado() {
		return this.recepcionado;
	}

	public void setRecepcionado(BigInteger recepcionado) {
		this.recepcionado = recepcionado;
	}

	public BigInteger getSolicitado() {
		return this.solicitado;
	}

	public void setSolicitado(BigInteger solicitado) {
		this.solicitado = solicitado;
	}

	public Valor getTipoMaterial() {
		return this.tipoMaterial;
	}

	public void setTipoMaterial(Valor tipoMaterial) {
		this.tipoMaterial = tipoMaterial;
	}

	public Destino getDestino() {
		return this.destino;
	}

	public void setDestino(Destino destino) {
		this.destino = destino;
	}

}